Інформація про новину
  • Переглядів: 584
  • Дата: 13-02-2022, 12:02
13-02-2022, 12:02

15. Введення елементів списку в Python

Категорія: Інформатика





Попередня сторінка:  14. Операції з елементами списку в Python
Наступна сторінка:   16. Елемент керування ListBox в Python

Як у Python перетворити список рядків на список чисел за допомогою одного рядка коду?

На минулих уроках ми навчилися виконувати дії зі списками, створеними в програмному коді. А якщо ми хочемо, щоб значення елемента списку вводив користувач?

для цього є кілька способів. Наприклад, ці значення можна ввести і зчитати з консолі як звичайний текстовий рядок, а в графічному інтерфейсі елементи списку можна ввести та зчитати з текстового поля.

Завдання № 1

Наведений нижче код дає користувачу можливість ввести послідовність чисел через кому, а потім перетворює отриманий рядок на числовий список.

1) Дізнайся з рубрики «Запитання-відповіді», як перетворити текстовий рядок на список і заповни пропуски в коді:

2) Спробуй описати послідовність дій, які виконуються в рядку

Для цього дай відповіді на питання:

Що буде міститися у змінній spysok, якщо користувач ввів рядок 2,3,5,6?

Яких значень набуває змінна і, якщо користувач ввів рядок 2,3,5,6? Для чого у коді використовується функція into?

Яких значень набуватиме вираз int(i), якщо користувач ввів рядок 7,8,9,10?

Що буде міститися у змінній spysok_number, якщо користувач ввів рядок 7,8,9,10?

1) Реалізуй на практиці код із завдання № 1. Запусти його, введи текст 1,2,3,4,5 і перевір, чи відображається такий результат:

Введіть елементи списку в одному рядку через кому 1, 2, 3, 4, 5

Ви ввели - 1, 2, 3, 4, 5

Створено список, елементи якого є типу str:

['1', '2', '3', '4', '5']

Числовий список:

[1, 2, 3, 4, 5]

2) Ти вже вмієш опрацьовувати числовий список, використовуючи функції max, min та sum. Доповни код, щоб в результаті його реалізації було виведено максимальне, мінімальне та середнє значення числового списку.

Завдання № 3

Користувачу простіше буде вводити елементи списку не через кому, а через пропуск. Як ти думаєш, що потрібно змінити у коді з попереднього завдання?

Реалізуй в програмному середовищі змінений тобою код.

Завдання № 4

Зміни код із попереднього завдання так, щоб користувач сам визначав, який символ буде розділювачем у рядку для елементів списку.

Завдання № 5

Повторимо основні команди створення графічного інтерфейсу програми з 8 класу. Проаналізуй наведений нижче фрагмент програми, а також результат його виконання, і поясни призначення кожного рядка коду:

Якщо виникають складнощі, скористайся рубрикою «Запитання-від-повіді».

Реалізуй у Python створення зображеного вище вікна програми з текстовим полем і кнопкою.

Завдання № 7

1) Заповни пропуски в коді введення списку з текстового поля та виведення його у вікні консолі:

2) Поясни, які рядки коду виконуються в разі натискання кнопки 'Обчислити'.

Завдання № 8

Реалізуй код із завдання № 7 на практиці. Перевір результат роботи програми:

ЗАПИТАННЯ-ВІДПОВІДІ

Як перетворити рядок на список?

Щоб перетворити рядок на список, потрібно до цього рядка застосувати метод split. Його аргументом є символ-роздільник, за яким рядок поділяється на підрядки. Ці підрядки стають елементами списку.

Наприклад, ось як за допомогою методу split перетворити на список рядок '24/09/2021' :

Якщо дописати до вищенаведеного коду print(spysok), то отримаємо такий результат:

Як реалізувати введення списку користувачем?

Можна ввести рядок у якусь змінну з консолі, а потім перетворити значення цієї змінної на список:

Якщо не потрібно зберігати введений текст, можна обійтися лише одним рядком коду:

Якщо у методі split не вказувати ніякого аргументу, то роздільником вважатиметься символ пропуску. Це корисно, наприклад, тоді, коли потрібно перетворити речення на список слів:

Як перетворити список рядків на числовий список?

Для перетворення елементів списку у цілочисловий тип даних можна скористатися класичним перебором елементів списку, який ми розглядали в попередньому параграфі за допомогою циклу for та функції перетворення на цілочисловий тип intQ :

У Python існує і більш компактний спосіб такого перетворення:

ЗАПИТАННЯ НА ПОВТОРЕННЯ МАТЕРІАЛУ 8 КЛАСУ

Як створюється вікно програми?

1. Підключається модуль tkinter.

2. За допомогою конструктора Tk створюється вікно.

як створити текстове поле у вікні?

За допомогою конструктора Entry та методу pack(), що розташує створене поле у вікні:

як створити кнопку у вікні?

За допомогою конструктора Button та методу pack().

Як опрацьовувати подію натискання кнопки?

1. Потрібно створити обробник події — функцію, яка виконуватиметься в разі натискання кнопки.

2. У конструкторі кнопки потрібно вказати параметр command, якому присвоїти ім'я функції-обробника події натискання кнопки.

Як зчитати з текстового поля дані, введені користувачем?

За допомогою методу get():

ПЕРЕВІР СЕБЕ

1. Запиши одним рядком код перетворення списку чисел а на список b рядків, що подають ці числа в текстовому вигляді.

2. Проаналізуй кожен рядок коду та визнач, за допомогою якого з них можна створити список дійсних чисел, записаних у текстовому полі ent через пропуск.

3. Минулого уроку ми створювали список середнього курсу бітко-їна за місяцями 2020 року безпосередньо в коді. Зроби цю програму більш універсальною, а саме:

забезпеч введення списку курсу валюти з текстового поля, щоб користувач мав можливість вводити послідовність чисел;

доповни код для виведення середнього значення введених чисел у написі;

доповни код для того, щоб вивести в написі кількість місяців, у яких відбувалося підвищення курсу у порівнянні з попереднім місяцем. Якщо не пам'ятаєш, як виводити в написі текст, скористайся рубрикою «Запитання-відповіді» з наступного розділу.

4. Створи програму із зображеним на малюнку інтерфейсом. У ній користувач вводить у текстове поле послідовність розділених пробілами чисел, натискає кнопку «Обчислити» — і програма виводить у написі праворуч послідовність різниць між сусідніми елементами введеного списку.

5. Порівняй введення списку за допомогою текстового поля в графічному інтерфейсі та введення списку за допомогою рядка в консольному режимі. Назви переваги та недоліки.

6. Порівняй два способи перетворення списку рядків на список чисел, наведені в рубриці «Запитання-відповіді». Який спосіб кращий? Аргументуй свою думку.

 

 

Це матеріал з підручника Інформатика 9 клас Коршунова 2022

 




Попередня сторінка:  14. Операції з елементами списку в Python
Наступна сторінка:   16. Елемент керування ListBox в Python



^